Data Storage Terminology

The following terms and definitions relate to ESE, the data storage technology used for DBS-based services in CygNet.

Term

Definition

ACID

ACID (Atomicity, Consistency, Isolation, and Durability) is a set of properties that guarantee that database transactions are processed reliably. In the context of databases, a single logical operation on the data is called a transaction. The ESE-based datastore engine provides ACID transactions that allow applications to retrieve data only from reliable data states and maintain data consistency in the event of an unexpected process termination or system shutdown.

Atomic — Either all of the operations in the transaction succeed (commit) or none of the operations persist (rollback). The transaction state change is all or none. If the database crashes in the middle of processing a transaction, then the transaction is rolled back.

Consistent — If the data are consistent before the transaction begins, then they will be consistent after the transaction finishes. The database is transformed from one correct state to another.

Isolated — The effects of a transaction that is in progress are hidden from all other transactions. Even though transactions run at the same time, it appears to each that the other transactions occur before or after, but not both.

Durable — When a transaction finishes, its results are persistent and will survive a system crash. A committed transaction changes its state so that it is preserved in the database even if the system crashes.

B+ Tree

A balanced tree data structure that keeps data sorted and allows searches, sequential access, insertions, and deletions in logarithmic amortized time. B+ trees include all characteristics of B trees, but additionally each page in the B+ tree has pointers to its previous and next adjacent page on the leaf. These allows for faster sequential seeking through the data.

CIndex

A proprietary data storage technology licensed from Trio Systems that defines the physical layer of the database. The CIndex library was used in older CygNet DBS-based services. Obsolete.

CAPRI

CAPRI is the logic level of the database, which defines the record type, record length, and record level. This resides above the physical level of the database (which is ESE). For example, CAPRI defines the queue key structure of how the records relate. This is the external view of the database that a client would see. CAPRI is a CygNet acronym.

See the DAT To CAPRI and CAPRI To DAT utilities.

DBS-Based Services

CygNet services that use the same underlying database engine (DBS). The schema of each service is defined in a Data Dictionary Language (.ddl) file. Indexes are providing for searching. All DBS-based services will use ESE as their data storage technology. The CygNet DBS-based services include: ACS, APPS, AUD, BSS, DDS, ELS, ELSALM, FAC, GNS, GRP, MSS, PNT, and the TRS. The Value History Service (VHS) uses the same underlying data storage technology (ESE) as the other DBS-based services, but it is not considered a DBS-based service due to its unique archiving functionality.

ESE

Extensible Storage Engine. ESE is a Microsoft data storage technology that defines the physical layer of a database. This technology is the core of Microsoft Exchange Server and Active Directory. ESE was originally released under the name JET Blue (Joint Engine Technology).

ESE Utility

A Microsoft utility used to view, modify, and repair ESE-based datastores. The file name is ESENTUTL.exe. In this document, the utility is referred to as the Microsoft ESE utility or ESENTUTL. The options available in the utility vary depending upon the operating system.

See ESENTUTL utility for more information.

Note: EseUtil.exe (without NT in the name and an 'I' in Util) is specific to Microsoft Exchange Server.

ISAM

Indexed Sequential Access Method. This is a method for indexing data for fast retrieval. It allows information to be retrieved randomly by data value (indexed) and in sorted order (sequential) using just one index file. This dual ability distinguishes ISAM from other methods, such as Hashing. An ISAM file is a file composed of individual pieces of information called “keys.” A key is an ASCII string, numeric value, or binary information representing some value in a data record. The index is arranged in such a way that keys can be retrieved both randomly and sequentially, together with their associated data record numbers.

Paging

Paging is a memory management scheme wherein data is retrieved from secondary storage in same-size blocks called pages. CygNet ESE-based datastores use 8 kilobyte (KB) pages. All CygNet records are smaller than 8 KB, so multiple CygNet records can fit into one page.

Service Configuration Keywords

Each CygNet service has a service configuration file (.cfg) used for setting service information, associated services, security information, logging information, replication information, backup settings, as well as other configuration information. The DBS-based services use the following service configuration keywords to manage backup processes, memory management, and transaction logging for each service:

  • BACKUP_PATH
  • BACKUP_TIME
  • COPY_BACKUP_TO
  • DBS_DISK_CACHE_IN_MEGS
  • DBS_MIN_DISK_CACHE_IN_MEGS
  • DBS_FILESYSTEM_CACHE_USAGE
  • DBS_TRANSACTION_LOG_DIR
  • DBS_TRANSACTION_LOG_SIZE
  • DBS_BACKUP_ATOMIC (ELS only)
  • VHS_FILE_SIZE_GROW_BY_MB (VHS only)
  • VHS_MAX_CACHE_SIZE_MB (VHS only)
  • VHS_MIN_CACHE_SIZE_MB (VHS only)
  • VHS_TRANSACTION_LOG_DIR (VHS only)

See the Service Configuration Keywords for each DBS-based service for more information.

Back to top